/**
 * 提取树形结构中所有节点的 id 和 depName
 * @param {Array} treeData 原始树形数据
 * @returns {Array} 包含 { id, depName } 的新数组
 */
export default function extractIdAndDepName(treeData) {
  const result = [];
  
  // 递归遍历函数
  const traverse = (nodes) => {
    nodes.forEach(node => {
      // 提取当前节点的 id 和 depName
      result.push({ id: node.id, depName: node.depName });
      
      // 递归处理子节点（兼容 departmentList 和 childList）
      if (node.departmentList?.length) {
        traverse(node.departmentList);
      }
      if (node.childList?.length) {
        traverse(node.childList);
      }
    });
  };

  // 从根节点开始遍历
  traverse(treeData);
  return result;
}
